package start.spring.basic.exinterface.feignapi;

import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.RequestHeader;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import start.spring.basic.log.LogConstant;
import start.spring.basic.response.ResponseData;

/**
 * 
 * ****************************************************************************
 * 提供给其它服务的Feign Api接口
 * 为了减少不必要的代码耦合，如果需要调用方传递非业务公共信息，直接在具体的接口上实现
 *
 * @author(作者)：xuyongyun	
 * @date(创建日期)：2023年2月11日
 ******************************************************************************
 */
@FeignClient(
		value = "exinterface",
		contextId = "InterfaceVersionApi",
		path = "/exinterface"
		)
public interface InterfaceVersionApi {

	/**
	 * 需要调用方传递请求唯一标识
	 *	
	 * @param traceId
	 * @return
	 * @since           1.0
	 */
	@RequestMapping(value="/resource/test/version",method=RequestMethod.GET)
	public ResponseData<String> testVersion(@RequestHeader(LogConstant.REQUEST_KEY_TRACEID) String traceId);
}
